In an effort to reduce the development, deployment and maintenance costs associated with computer applications, many new applications and services are now being deployed as distributed, client-server applications on Internet and/or private corporate intranets using World Wide Web technologies, such as, for example, the Hypertext Transport Protocol (HTTP) and Hypertext Markup Language (HTML). Many of these applications involve the use of multi-media sub-applications, including audio and audio-related components.
Typically an audio file is delivered to a user by downloading it using a program such as a Web browser and playing it using a helper application or browser "plug-in." Several file compression and streaming technologies have been developed to improve the performance of downloaded audio and other media delivered over the above-described distributed, client-server applications. In addition to the delivery of audio materials, several companies have also developed methods for two-way voice communications over the same networks. In other words, both audio and data files are delivered to the user via the data network.
As those skilled in the art will recognize, the transport of audio and data files over a data network is both time-consuming and resource intensive. More specifically, such transmission takes a substantial amount of bandwidth and thus causes significant transmission delays, which are undesirable from a user perspective. In a typical prior art application, audio files such as voice are saved on hard disk and sent across the Internet or an intranet. This approach also requires a substantial amount of storage.
Consequently, a need exists for a method and system for delivering audio and data files to a user which reduces the strain on network resources, namely bandwidth and storage, and which may be performed in a timely and efficient manner. Such a method and system should also provide for the two-way transport of audio for both recording and playback in a manner that is tightly coordinated with the display of a client-server application and which allows the transport of audio to be flexibly directed across the data network or voice network, whichever best accommodates a particular individual user in a particular situation. Finally, such a method and system should transport audio and data files in a manner which is transparent to the user.